/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package controller;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import beans.B_Idioma;
import db.DB_Idioma;

/**
 *
 * @author JoseHernan
 */
public class C_Idioma extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doPost(request, response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");
        response.setCharacterEncoding("UTF-8");
        PrintWriter out = response.getWriter();
        HttpSession session = request.getSession(true);
        //Preguntamos si estamos logueados
        if (session.getAttribute("userName") != null) {
            String action = request.getParameter("action");
            String userName = session.getAttribute("userName").toString();
            String mensaje = "";
            int flagAccion = 0;
            String id = request.getParameter("id");
            //Parameters
            String descripcion;

            B_Idioma obj;
            //New
            if (action.equals("n")) {
                //Set Parameters
                descripcion = request.getParameter("descripcion");
                obj = new B_Idioma();
                obj.setId(Integer.parseInt(id));
                obj.setDescripcion(descripcion);
                obj.setUser(userName);
                mensaje = DB_Idioma.crud(obj, action);
                flagAccion = 1;
            } //Update
            else if (action.equals("u")) {
                //Set Parameters
                descripcion = request.getParameter("descripcion");
                obj = new B_Idioma();
                obj.setId(Integer.parseInt(id));
                obj.setDescripcion(descripcion);
                obj.setUser(userName);
                mensaje = DB_Idioma.crud(obj, action);
                flagAccion = 1;
            } //Delete
            else if (action.equals("d")) {
                obj = new B_Idioma();
                obj.setId(Integer.parseInt(id));
                mensaje = DB_Idioma.crud(obj, action);
                flagAccion = 1;
            } else if (action.equals("ds")) {
                String[] itemsDelete = id.split(",");
                //Verificamos que tenga mas de 1 item
                if (itemsDelete.length > 0) {
                    for (int i = 0; i < itemsDelete.length; i++) {
                        obj = new B_Idioma();
                        obj.setId(Integer.parseInt(itemsDelete[i]));
                        mensaje += DB_Idioma.crud(obj, "d");
                        if ((i + 1) < itemsDelete.length) {
                            mensaje += "***";
                        }
                    }
                }
                flagAccion = 1;
            }
            if (flagAccion == 0) {
                mensaje = "La página solicitada no existe.";
                response.sendRedirect("mensaje.jsp?mensaje=" + mensaje + "&pagina=home.jsp");
            } else {
                out.write(mensaje);
            }
        } else {
            //WITHOUT SESSION
            String mensaje = "Su sesion a expirado, ingrese nuevamente.";
            response.sendRedirect("mensaje.jsp?mensaje=" + mensaje + "&pagina=index.jsp");
        }
    }
}
